// Promise.race 方法 调用的列表中, 任何一个成功或失败, 就采用它的结果

// 把原有的 node api 变成 promise 风格的
// const fs = require("fs").promises
// const util = require("util") // node 中一个常用的 模块

// fs.readFile("./note.md", "utf-8").then((data) => {
//   console.log(data);
// })

// util.promisify 可以把 某个 API 变成 promise.风格
// let read1 = util.promisify(fs.readFile)
// read1("note.md", "utf8").then((data) => {
//   console.log(data);
// }).catch((err) => {
//   console.log(err);
// })

// -----------------------
// function promiseify() { // 高阶函数
//   return function (...args) {
//     return new Promise((resolve, reject) => {
//       // fs.readFile(...args, function () {
//       // })
//       fn(...args, function (err, data) {
//         if (err) return reject(err)
//
//       })
//     })
//
//   }
// }

const fs = require("fs").promises
